home *** CD-ROM | disk | FTP | other *** search
/ All for Cell Phones: Sony Ericsson / Sony-Ericsson 2004.iso / Java / cellhtml / CellHtml.jar / VirtualGraphics.class (.txt) < prev   
Encoding:
Java Class File  |  2001-09-20  |  3.5 KB  |  207 lines

  1. import java.util.Vector;
  2. import javax.microedition.lcdui.Graphics;
  3. import javax.microedition.lcdui.Image;
  4.  
  5. class VirtualGraphics {
  6.    // $FF: renamed from: ─ò int
  7.    int field_0;
  8.    public static int bgcolor;
  9.    // $FF: renamed from: ─ÿ int
  10.    int field_1;
  11.    // $FF: renamed from: ─Ö int
  12.    int field_2;
  13.    // $FF: renamed from: ─Ü javax.microedition.lcdui.Image
  14.    Image field_3;
  15.    // $FF: renamed from: ─¢ javax.microedition.lcdui.Image
  16.    Image field_4;
  17.    // $FF: renamed from: BG javax.microedition.lcdui.Graphics
  18.    Graphics field_5;
  19.    public static Vector VGCV = new Vector(1);
  20.    public static Vector GFV = new Vector(1);
  21.  
  22.    VirtualGraphics(int var1, int var2) {
  23.       this.field_1 = var1;
  24.       this.field_2 = var2;
  25.  
  26.       try {
  27.          this.field_4 = Image.createImage(var1, var2);
  28.          this.field_5 = this.field_4.getGraphics();
  29.       } catch (Exception var4) {
  30.       }
  31.  
  32.       this.reset();
  33.    }
  34.  
  35.    public void reset() {
  36.       this.field_0 = 0;
  37.       bgcolor = 16777215;
  38.       this.field_3 = null;
  39.       VGCV.removeAllElements();
  40.       GFV.removeAllElements();
  41.    }
  42.  
  43.    public void setBgColor(int var1) {
  44.       bgcolor = var1;
  45.    }
  46.  
  47.    public void setBgImage(Image var1) {
  48.       this.field_3 = var1;
  49.    }
  50.  
  51.    public int getColor() {
  52.       return this.field_0;
  53.    }
  54.  
  55.    public void setColor(int var1) {
  56.       this.field_0 = var1;
  57.    }
  58.  
  59.    public void drawString(String var1, int var2, int var3, int var4) {
  60.       if (var1 != null && var1.length() != 0) {
  61.          VGCommand var5 = new VGCommand();
  62.          var5.type = 0;
  63.          var5.─ô = var3;
  64.          var5.─ö = var3 + MapCanvas.fontHeight;
  65.          var5.─ò = this.field_0;
  66.          var5.─û = var4;
  67.          var5.x1 = var2;
  68.          var5.y1 = var3;
  69.          var5.─ù = var1;
  70.          VGCV.addElement(var5);
  71.       }
  72.    }
  73.  
  74.    public void drawLine(int var1, int var2, int var3, int var4) {
  75.       VGCommand var5 = new VGCommand();
  76.       var5.type = 1;
  77.       var5.─ô = var2;
  78.       var5.─ö = var4;
  79.       var5.─ò = this.field_0;
  80.       var5.x1 = var1;
  81.       var5.y1 = var2;
  82.       var5.x2 = var3;
  83.       var5.y2 = var4;
  84.       VGCV.addElement(var5);
  85.    }
  86.  
  87.    public void drawImage(Image var1, int var2, int var3, int var4) {
  88.       VGCommand var5 = new VGCommand();
  89.       var5.type = 2;
  90.       var5.─ô = var3;
  91.       var5.─ö = var3 + var1.getHeight();
  92.       var5.─û = var4;
  93.       var5.─ò = 0;
  94.       var5.x1 = var2;
  95.       var5.y1 = var3;
  96.       var5.img = var1;
  97.       VGCV.addElement(var5);
  98.    }
  99.  
  100.    public void drawRect(int var1, int var2, int var3, int var4) {
  101.       VGCommand var5 = new VGCommand();
  102.       var5.type = 3;
  103.       var5.─ô = var2;
  104.       var5.─ö = var2 + var4;
  105.       var5.─ò = this.field_0;
  106.       var5.x1 = var1;
  107.       var5.y1 = var2;
  108.       var5.x2 = var3;
  109.       var5.y2 = var4;
  110.       VGCV.addElement(var5);
  111.    }
  112.  
  113.    public void drawRoundRect(int var1, int var2, int var3, int var4, int var5, int var6) {
  114.       VGCommand var7 = new VGCommand();
  115.       var7.type = 4;
  116.       var7.─ô = var2;
  117.       var7.─ö = var2 + var4;
  118.       var7.─ò = this.field_0;
  119.       var7.x1 = var1;
  120.       var7.y1 = var2;
  121.       var7.x2 = var3;
  122.       var7.y2 = var4;
  123.       var7.x3 = var5;
  124.       var7.y3 = var6;
  125.       VGCV.addElement(var7);
  126.    }
  127.  
  128.    public void fillRect(int var1, int var2, int var3, int var4) {
  129.       VGCommand var5 = new VGCommand();
  130.       var5.type = 5;
  131.       var5.─ô = var2;
  132.       var5.─ö = var2 + var4;
  133.       var5.─ò = this.field_0;
  134.       var5.x1 = var1;
  135.       var5.y1 = var2;
  136.       var5.x2 = var3;
  137.       var5.y2 = var4;
  138.       VGCV.addElement(var5);
  139.    }
  140.  
  141.    public void fillRoundRect(int var1, int var2, int var3, int var4, int var5, int var6) {
  142.       VGCommand var7 = new VGCommand();
  143.       var7.type = 6;
  144.       var7.─ô = var2;
  145.       var7.─ö = var2 + var4;
  146.       var7.─ò = this.field_0;
  147.       var7.x1 = var1;
  148.       var7.y1 = var2;
  149.       var7.x2 = var3;
  150.       var7.y2 = var4;
  151.       var7.x3 = var5;
  152.       var7.y3 = var6;
  153.       VGCV.addElement(var7);
  154.    }
  155.  
  156.    public void render(Graphics var1, int var2) {
  157.       int var3 = var2 + this.field_2;
  158.       if (this.field_3 == null) {
  159.          this.field_5.setColor(bgcolor);
  160.          this.field_5.fillRect(0, 0, this.field_1, this.field_2);
  161.       } else {
  162.          int var4 = this.field_3.getWidth();
  163.          int var5 = this.field_3.getHeight();
  164.          int var6 = var2 % var5;
  165.  
  166.          for(int var7 = 0; var7 < this.field_1; var7 += var4) {
  167.             for(int var8 = -var6; var8 < this.field_2; var8 += var5) {
  168.                this.field_5.drawImage(this.field_3, var7, var8, 20);
  169.             }
  170.          }
  171.       }
  172.  
  173.       int var9 = VGCV.size();
  174.  
  175.       for(int var10 = 0; var10 < var9; ++var10) {
  176.          VGCommand var11 = (VGCommand)VGCV.elementAt(var10);
  177.          if (var11.─ö >= var2 && var11.─ô <= var3) {
  178.             this.field_5.setColor(var11.─ò);
  179.             switch (var11.type) {
  180.                case 0:
  181.                   this.field_5.drawString(var11.─ù, var11.x1, var11.y1 - var2, var11.─û);
  182.                   break;
  183.                case 1:
  184.                   this.field_5.drawLine(var11.x1, var11.y1 - var2, var11.x2, var11.y2 - var2);
  185.                   break;
  186.                case 2:
  187.                   this.field_5.drawImage(var11.img, var11.x1, var11.y1 - var2, var11.─û);
  188.                   break;
  189.                case 3:
  190.                   this.field_5.drawRect(var11.x1, var11.y1 - var2, var11.x2, var11.y2);
  191.                   break;
  192.                case 4:
  193.                   this.field_5.drawRoundRect(var11.x1, var11.y1 - var2, var11.x2, var11.y2, var11.x3, var11.y3);
  194.                   break;
  195.                case 5:
  196.                   this.field_5.fillRect(var11.x1, var11.y1 - var2, var11.x2, var11.y2);
  197.                   break;
  198.                case 6:
  199.                   this.field_5.fillRoundRect(var11.x1, var11.y1 - var2, var11.x2, var11.y2, var11.x3, var11.y3);
  200.             }
  201.          }
  202.       }
  203.  
  204.       var1.drawImage(this.field_4, 0, 0, 20);
  205.    }
  206. }
  207.